package com.ctshk.rpc.booking.req.system.air.add;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * 系统机票旅客信息
 * </p>
 *
 * @author 谢诗宏
 * @since 2021-03-09
 */
@Data


@ApiModel(value = "SupplierSystemOrderAirTicketReq对象", description = "系统机票旅客信息")
public class SupplierSystemOrderAirTicketAddReq implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "ID")
    private Long id;

    @ApiModelProperty(value = "所属订单")
    private Long orderId;

    @ApiModelProperty(value = "所属机票信息")
    private Long airId;

    @ApiModelProperty(value = "行程类型")
    private Integer travelType;

    @ApiModelProperty(value = "启程日期")
    private LocalDateTime startTime;

    @ApiModelProperty(value = "返程日期")
    private LocalDateTime backTime;

    @ApiModelProperty(value = "仓位ID")
    private Long positionId;

    @ApiModelProperty(value = "仓位")
    private String position;

    @ApiModelProperty(value = "旅客ID")
    private Long touristId;

    @ApiModelProperty(value = "旅客姓名")
    private String touristName;

    @ApiModelProperty(value = "国籍")
    private String nation;

    @ApiModelProperty(value = "旅客类型ID")
    private Long touristTypeId;

    @ApiModelProperty(value = "旅客类型")
    private String touristType;

    @ApiModelProperty(value = "证件类型ID")
    private Long certificateTypeId;

    @ApiModelProperty(value = "证件类型")
    private String certificateType;

    @ApiModelProperty(value = "证件号")
    private String certificateNumber;

    @NotNull(message = "单价不能为空")
    @ApiModelProperty(value = "单价")
    private BigDecimal singlePrice;

    @NotNull(message = "税费不能为空")
    @ApiModelProperty(value = "税费")
    private BigDecimal taxAmount;

    @NotNull(message = "小计不能为空")
    @ApiModelProperty(value = "小计")
    private BigDecimal totalPrice;

    /*@Valid
    @NotEmpty(message = "机票信息列表不能为空")
    @ApiModelProperty(value = "机票信息列表")
    private SupplierSystemOrderAirFlightAddReq supplierSystemOrderAirFlightAddReq;*/
}
